package com.crane.oss.school.dao;


import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.crane.oss.app.bean.resp.AppStudentSkipRopeResp;
import com.crane.oss.app.bean.resp.AppTeacherSkipRopeResp;
import com.crane.oss.school.bean.request.task.QueryStudentTaskDetailListReq;
import com.crane.oss.school.bean.request.task.QueryStudentTaskRopeListReq;
import com.crane.oss.school.bean.request.task.QueryTaskDetailRopeListReq;
import com.crane.oss.school.bean.request.task.QueryTaskRopeListReq;
import com.crane.oss.school.bean.resp.TaskStudentSkipRopeResp;
import com.crane.oss.school.bean.resp.TaskRopeStudentResp;
import com.crane.oss.school.bean.resp.TaskRopeWebResp;
import com.crane.oss.school.bean.resp.TotalSkipRopeResp;
import com.crane.oss.school.model.Task;
import com.crane.oss.sys.model.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;


@Mapper
public interface TaskDao extends BaseMapper<Task> {

    IPage<TaskRopeWebResp> queryTaskRopeWebResp(@Param("page")Page<User> page, @Param("request")QueryTaskRopeListReq req);

    IPage<AppTeacherSkipRopeResp> queryTeacherSkipRopeList(@Param("page")Page<User> page, @Param("request")QueryTaskRopeListReq req);

    IPage<TaskRopeStudentResp> queryTaskDetailRopeList(@Param("page")Page<User> page, @Param("request") QueryTaskDetailRopeListReq request);

    TotalSkipRopeResp queryTotalSkipRope(QueryStudentTaskDetailListReq req);

    IPage<TaskStudentSkipRopeResp> queryStudentTaskDetailList(@Param("page")Page<User> page, @Param("request")QueryStudentTaskDetailListReq request);

    IPage<AppStudentSkipRopeResp> queryTaskRopeStudentList(@Param("page")Page<User> page, @Param("request") QueryStudentTaskRopeListReq req);
}
